Computers and other electronic devices can communicate with other electronic devices over a communications network. Network protocols have been developed to enable such communication. One such network protocol is called Dynamic Host Configuration Protocol (DHCP), which is a protocol allowing a device to request and obtain an Internet address from a server which has a list of addresses available for assignment. A device can use DHCP to obtain a unique Internet Protocol (IP) address from a DHCP server, typically when the device first becomes active on the network, e.g., when the device is connected to a network or is rebooted. All IP addresses are ensured by the DHCP server to be unique so that each device can be individually addressed on the Internet. For DHCP to function properly, a DHCP server must be already established on the network and an operational network path must exist between the DHCP server and the device that has joined the network. For example, systems management devices such as the Remote Supervisor Adapter (RSA) II from IBM Corp., the BladeCenter Management Module and Advanced Management Module from IBM Corp., and server Baseboard Management Controllers (service processors), all use default behavior that attempts to receive a DHCP address when the devices first join the network.
In typical operation, the newly-connected device sends out a request to the network server on a local network, and the server responds by providing an IP network address to the requesting device, allowing the device to communicate with other devices over an IP network such as the Internet. However, in some cases the device request may fail, e.g., due to failure of the DHCP server or a disruption of the network path between device and the DHCP server (for example, the DHCP server may not exist on the network). A requesting device receiving no response from a DHCP server can fall back to a predefined static IP address after a predetermined period of time without receiving a response. For example, after 2 minutes, a reserved IP address of 192.168.70.125 can be reverted to as the default address, which is behavior recommended by the DHCP protocol standard. When this occurs, the device is left sitting on the network with a non-routable IP address, and cannot communicate with any other servers or devices.
If the device had a valid IP address, it would be allowed to communicate over the network. Thus, to remedy the situation, a user can try to configure the device with a valid IP address. However, since the device cannot be communicated with over the network, a remote user is prevented from connecting to the device. The only way the user can configure a static IP address when the device is in such a state is to physically visit the device and connect an appropriate device to perform the configuration. For example, a portable computer or mobile computer can be physically connected to a network port or serial port on the device to configure it and provide a valid network address (e.g., the portable computer can even include a network server that provides an address to the device). However, this can be inconvenient when a device fails to obtain a valid network address and the administrator is not located close to the failing device to manually configure it.
Accordingly, what is needed is the ability to configure the network address of a device remotely when the device is using an invalid default network address. The present invention addresses such a need.